package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.DiyPage;

import java.util.*;
public class DiyPageExample extends SgExample<DiyPageExample.Criteria> {
    public static final Class<DiyPage> beanClass = DiyPage.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn imMenu;
    public static EntityColumn fieldMap;
    public static EntityColumn permissions;
    public static EntityColumn outerUrl;
    public static EntityColumn pageId;
    public static EntityColumn title;
    public static EntityColumn type;
    public static EntityColumn htmlContent;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        imMenu = listMap.get("imMenu");
        fieldMap = listMap.get("fieldMap");
        permissions = listMap.get("permissions");
        outerUrl = listMap.get("outerUrl");
        pageId = listMap.get("pageId");
        title = listMap.get("title");
        type = listMap.get("type");
        htmlContent = listMap.get("htmlContent");
        }

    public DiyPageExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected DiyPageExample.Criteria createCriteriaInternal() {
        return new DiyPageExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public DiyPageExample.Criteria andImMenuIsNull() {
            return isNull(imMenu);
        }

        public DiyPageExample.Criteria andImMenuIsNotNull() {
            return isNotNull(imMenu);
        }

        public DiyPageExample.Criteria andImMenuEqualTo(Boolean value) {
            return equalTo(imMenu, value);
        }

        public DiyPageExample.Criteria andImMenuNotEqualTo(Boolean value) {
            return notEqualTo(imMenu, value);
        }

        public DiyPageExample.Criteria andImMenuGreaterThan(Boolean value) {
            return greaterThan(imMenu, value);
        }

        public DiyPageExample.Criteria andImMenuGreaterThanOrEqualTo(Boolean value) {
            return greaterThanOrEqualTo(imMenu, value);
        }

        public DiyPageExample.Criteria andImMenuLessThan(Boolean value) {
            return lessThan(imMenu, value);
        }

        public DiyPageExample.Criteria andImMenuLessThanOrEqualTo(Boolean value) {
            return lessThanOrEqualTo(imMenu, value);
        }

        public DiyPageExample.Criteria andImMenuIn(List<Boolean> values) {
            return in(imMenu, values);
        }

        public DiyPageExample.Criteria andImMenuNotIn(List<Boolean> values) {
            return notIn(imMenu, values);
        }

        public DiyPageExample.Criteria andImMenuBetween(Boolean value1, Boolean value2) {
            return between(imMenu, value1, value2);
        }

        public DiyPageExample.Criteria andImMenuNotBetween(Boolean value1, Boolean value2) {
            return notBetween(imMenu, value1, value2);
        }
        public DiyPageExample.Criteria andFieldMapIsNull() {
            return isNull(fieldMap);
        }

        public DiyPageExample.Criteria andFieldMapIsNotNull() {
            return isNotNull(fieldMap);
        }

        public DiyPageExample.Criteria andFieldMapEqualTo(String value) {
            return equalTo(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapNotEqualTo(String value) {
            return notEqualTo(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapGreaterThan(String value) {
            return greaterThan(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapLessThan(String value) {
            return lessThan(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapLike(String value) {
            return like(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapNotLike(String value) {
            return notLike(fieldMap, value);
        }

        public DiyPageExample.Criteria andFieldMapIn(List<String> values) {
            return in(fieldMap, values);
        }

        public DiyPageExample.Criteria andFieldMapNotIn(List<String> values) {
            return notIn(fieldMap, values);
        }

        public DiyPageExample.Criteria andFieldMapBetween(String value1, String value2) {
            return between(fieldMap, value1, value2);
        }

        public DiyPageExample.Criteria andFieldMapNotBetween(String value1, String value2) {
            return notBetween(fieldMap, value1, value2);
        }
        public DiyPageExample.Criteria andPermissionsIsNull() {
            return isNull(permissions);
        }

        public DiyPageExample.Criteria andPermissionsIsNotNull() {
            return isNotNull(permissions);
        }

        public DiyPageExample.Criteria andPermissionsEqualTo(String value) {
            return equalTo(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsNotEqualTo(String value) {
            return notEqualTo(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsGreaterThan(String value) {
            return greaterThan(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsLessThan(String value) {
            return lessThan(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsLike(String value) {
            return like(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsNotLike(String value) {
            return notLike(permissions, value);
        }

        public DiyPageExample.Criteria andPermissionsIn(List<String> values) {
            return in(permissions, values);
        }

        public DiyPageExample.Criteria andPermissionsNotIn(List<String> values) {
            return notIn(permissions, values);
        }

        public DiyPageExample.Criteria andPermissionsBetween(String value1, String value2) {
            return between(permissions, value1, value2);
        }

        public DiyPageExample.Criteria andPermissionsNotBetween(String value1, String value2) {
            return notBetween(permissions, value1, value2);
        }
        public DiyPageExample.Criteria andOuterUrlIsNull() {
            return isNull(outerUrl);
        }

        public DiyPageExample.Criteria andOuterUrlIsNotNull() {
            return isNotNull(outerUrl);
        }

        public DiyPageExample.Criteria andOuterUrlEqualTo(String value) {
            return equalTo(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlNotEqualTo(String value) {
            return notEqualTo(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlGreaterThan(String value) {
            return greaterThan(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlLessThan(String value) {
            return lessThan(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlLike(String value) {
            return like(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlNotLike(String value) {
            return notLike(outerUrl, value);
        }

        public DiyPageExample.Criteria andOuterUrlIn(List<String> values) {
            return in(outerUrl, values);
        }

        public DiyPageExample.Criteria andOuterUrlNotIn(List<String> values) {
            return notIn(outerUrl, values);
        }

        public DiyPageExample.Criteria andOuterUrlBetween(String value1, String value2) {
            return between(outerUrl, value1, value2);
        }

        public DiyPageExample.Criteria andOuterUrlNotBetween(String value1, String value2) {
            return notBetween(outerUrl, value1, value2);
        }
        public DiyPageExample.Criteria andPageIdIsNull() {
            return isNull(pageId);
        }

        public DiyPageExample.Criteria andPageIdIsNotNull() {
            return isNotNull(pageId);
        }

        public DiyPageExample.Criteria andPageIdEqualTo(Long value) {
            return equalTo(pageId, value);
        }

        public DiyPageExample.Criteria andPageIdNotEqualTo(Long value) {
            return notEqualTo(pageId, value);
        }

        public DiyPageExample.Criteria andPageIdGreaterThan(Long value) {
            return greaterThan(pageId, value);
        }

        public DiyPageExample.Criteria andPageIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(pageId, value);
        }

        public DiyPageExample.Criteria andPageIdLessThan(Long value) {
            return lessThan(pageId, value);
        }

        public DiyPageExample.Criteria andPageIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(pageId, value);
        }

        public DiyPageExample.Criteria andPageIdIn(List<Long> values) {
            return in(pageId, values);
        }

        public DiyPageExample.Criteria andPageIdNotIn(List<Long> values) {
            return notIn(pageId, values);
        }

        public DiyPageExample.Criteria andPageIdBetween(Long value1, Long value2) {
            return between(pageId, value1, value2);
        }

        public DiyPageExample.Criteria andPageIdNotBetween(Long value1, Long value2) {
            return notBetween(pageId, value1, value2);
        }
        public DiyPageExample.Criteria andTitleIsNull() {
            return isNull(title);
        }

        public DiyPageExample.Criteria andTitleIsNotNull() {
            return isNotNull(title);
        }

        public DiyPageExample.Criteria andTitleEqualTo(String value) {
            return equalTo(title, value);
        }

        public DiyPageExample.Criteria andTitleNotEqualTo(String value) {
            return notEqualTo(title, value);
        }

        public DiyPageExample.Criteria andTitleGreaterThan(String value) {
            return greaterThan(title, value);
        }

        public DiyPageExample.Criteria andTitleGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(title, value);
        }

        public DiyPageExample.Criteria andTitleLessThan(String value) {
            return lessThan(title, value);
        }

        public DiyPageExample.Criteria andTitleLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(title, value);
        }

        public DiyPageExample.Criteria andTitleLike(String value) {
            return like(title, value);
        }

        public DiyPageExample.Criteria andTitleNotLike(String value) {
            return notLike(title, value);
        }

        public DiyPageExample.Criteria andTitleIn(List<String> values) {
            return in(title, values);
        }

        public DiyPageExample.Criteria andTitleNotIn(List<String> values) {
            return notIn(title, values);
        }

        public DiyPageExample.Criteria andTitleBetween(String value1, String value2) {
            return between(title, value1, value2);
        }

        public DiyPageExample.Criteria andTitleNotBetween(String value1, String value2) {
            return notBetween(title, value1, value2);
        }
        public DiyPageExample.Criteria andTypeIsNull() {
            return isNull(type);
        }

        public DiyPageExample.Criteria andTypeIsNotNull() {
            return isNotNull(type);
        }

        public DiyPageExample.Criteria andTypeEqualTo(Integer value) {
            return equalTo(type, value);
        }

        public DiyPageExample.Criteria andTypeNotEqualTo(Integer value) {
            return notEqualTo(type, value);
        }

        public DiyPageExample.Criteria andTypeGreaterThan(Integer value) {
            return greaterThan(type, value);
        }

        public DiyPageExample.Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            return greaterThanOrEqualTo(type, value);
        }

        public DiyPageExample.Criteria andTypeLessThan(Integer value) {
            return lessThan(type, value);
        }

        public DiyPageExample.Criteria andTypeLessThanOrEqualTo(Integer value) {
            return lessThanOrEqualTo(type, value);
        }

        public DiyPageExample.Criteria andTypeIn(List<Integer> values) {
            return in(type, values);
        }

        public DiyPageExample.Criteria andTypeNotIn(List<Integer> values) {
            return notIn(type, values);
        }

        public DiyPageExample.Criteria andTypeBetween(Integer value1, Integer value2) {
            return between(type, value1, value2);
        }

        public DiyPageExample.Criteria andTypeNotBetween(Integer value1, Integer value2) {
            return notBetween(type, value1, value2);
        }
        public DiyPageExample.Criteria andHtmlContentIsNull() {
            return isNull(htmlContent);
        }

        public DiyPageExample.Criteria andHtmlContentIsNotNull() {
            return isNotNull(htmlContent);
        }

        public DiyPageExample.Criteria andHtmlContentEqualTo(String value) {
            return equalTo(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentNotEqualTo(String value) {
            return notEqualTo(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentGreaterThan(String value) {
            return greaterThan(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentLessThan(String value) {
            return lessThan(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentLike(String value) {
            return like(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentNotLike(String value) {
            return notLike(htmlContent, value);
        }

        public DiyPageExample.Criteria andHtmlContentIn(List<String> values) {
            return in(htmlContent, values);
        }

        public DiyPageExample.Criteria andHtmlContentNotIn(List<String> values) {
            return notIn(htmlContent, values);
        }

        public DiyPageExample.Criteria andHtmlContentBetween(String value1, String value2) {
            return between(htmlContent, value1, value2);
        }

        public DiyPageExample.Criteria andHtmlContentNotBetween(String value1, String value2) {
            return notBetween(htmlContent, value1, value2);
        }
    }
}